Skip to content

Launch Manager supports the new configuration format#110

Open
NicolasFussberger wants to merge 88 commits intoeclipse-score:mainfrom
etas-contrib:feature/support_new_launch_manager_config
Open

Launch Manager supports the new configuration format#110
NicolasFussberger wants to merge 88 commits intoeclipse-score:mainfrom
etas-contrib:feature/support_new_launch_manager_config

Conversation

@NicolasFussberger
Copy link
Contributor

Summary

This PR introduces a mapping of the new configuration schema to the existing configuration format. Therefore, allowing users to configure the launch_manager using the simpler configuration format. This approach is depicted here.

The configuration interface is a bazel function that validates the json configuration, maps the new configuration content to the existing configuration files that are in use by the C++ implementation. Note: This PR is not yet adapting the C++ code to load the new configuration directly, but instead it maps the new configuration to the old configuration format so the existing code keeps working as-is.

Usage Example from the reference_integration perspective:

load("@score_lifecycle_health//:defs.bzl", "launch_manager_config")
launch_manager_config(
    name ="lifecycle_configs",
    config="//showcases/simple_lifecycle/configs:launch_manager_config.json"
)

Details

  • Introduces bazel function launch_manager_config, allowing users to easily make use of the new configuration
  • Introduces an internal mapping script in python lifecycle_config.py, taking as input the new configuration file and generating as output the same content in the existing configuration format (i.e. mapping of RunTarget -> ProcessGroup States). See the Readme at scripts/config_mapping/Readme.md for details
  • Adapt the ControlClient API to change RunTarget instead of ProcessGroup States (internal mapping to ProcessGroup States)
  • Adapt existing examples and smoketest to use the new configuration format

Closes: #38

@github-actions
Copy link

github-actions bot commented Mar 10, 2026

License Check Results

🚀 The license check job ran with the Bazel command:

bazel run --lockfile_mode=error //:license-check

Status: ⚠️ Needs Review

Click to expand output
[License Check Output]
Extracting Bazel installation...
Starting local Bazel server (8.4.2) and connecting to it...
INFO: Invocation ID: d3b8a94d-0338-4b65-b1fa-be9d434f0feb
Computing main repo mapping: 
Computing main repo mapping: 
Computing main repo mapping: 
WARNING: For repository 'score_rust_policies', the root module requires module version score_rust_policies@0.0.3, but got score_rust_policies@0.0.5 in the resolved dependency graph. Please update the version in your MODULE.bazel or set --check_direct_dependencies=off
Loading: 
Loading: 0 packages loaded
Loading: 0 packages loaded
Loading: 0 packages loaded
    currently loading: 
Loading: 0 packages loaded
    currently loading: 
Loading: 0 packages loaded
    currently loading: 
Loading: 0 packages loaded
    currently loading: 
Analyzing: target //:license-check (1 packages loaded)
Analyzing: target //:license-check (1 packages loaded, 0 targets configured)
Analyzing: target //:license-check (1 packages loaded, 0 targets configured)

Analyzing: target //:license-check (33 packages loaded, 9 targets configured)

Analyzing: target //:license-check (87 packages loaded, 9 targets configured)

Analyzing: target //:license-check (138 packages loaded, 446 targets configured)

Analyzing: target //:license-check (153 packages loaded, 2671 targets configured)

Analyzing: target //:license-check (154 packages loaded, 4567 targets configured)

Analyzing: target //:license-check (165 packages loaded, 7892 targets configured)

Analyzing: target //:license-check (165 packages loaded, 7901 targets configured)

Analyzing: target //:license-check (165 packages loaded, 7901 targets configured)

Analyzing: target //:license-check (165 packages loaded, 7901 targets configured)

Analyzing: target //:license-check (169 packages loaded, 9913 targets configured)

INFO: Analyzed target //:license-check (170 packages loaded, 10039 targets configured).
[6 / 16] Creating source manifest for @@score_tooling+//dash/tool/formatters:dash_format_converter [for tool]; 0s local
[13 / 16] JavaToolchainCompileClasses external/rules_java+/toolchains/platformclasspath_classes; 0s disk-cache, processwrapper-sandbox
[15 / 16] [Prepa] Building license.check.license_check.jar ()
INFO: Found 1 target...
Target //:license.check.license_check up-to-date:
  bazel-bin/license.check.license_check
  bazel-bin/license.check.license_check.jar
INFO: Elapsed time: 27.468s, Critical Path: 2.63s
INFO: 16 processes: 12 internal, 3 processwrapper-sandbox, 1 worker.
INFO: Build completed successfully, 16 total actions
INFO: Running command line: bazel-bin/license.check.license_check ./formatted.txt <args omitted>
usage: org.eclipse.dash.licenses.cli.Main [-batch <int>] [-cd <url>]
       [-confidence <int>] [-ef <url>] [-excludeSources <sources>] [-help] [-lic
       <url>] [-project <shortname>] [-repo <url>] [-review] [-summary <file>]
       [-timeout <seconds>] [-token <token>]

@github-actions
Copy link

The created documentation from the pull request is available at: docu-html

@NicolasFussberger NicolasFussberger marked this pull request as ready for review March 11, 2026 10:18
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: Backlog

Development

Successfully merging this pull request may close these issues.

Configuration concept

4 participants